#pragma once 
#include "imtPublic.h"
#include "wx/wx.h"
#include "wx/aui/aui.h"

namespace iMate
{
	class WorldEditorApp;

	class MainFrame : public wxFrame
	{
		enum
		{
			wx_ID_NewScene,
			wx_ID_OpenScene,
			wx_ID_SaveScene,
			wx_ID_Config,
			wx_ID_QUIT,
		};
		void OnMenuItemEvent(wxCommandEvent &event);

		DECLARE_EVENT_TABLE()

	public:

		MainFrame(wxWindow* parent);
	
		~MainFrame();

		void UpdateOgre();
		
	private:
		wxAuiManager mAuiManager;

		WorldEditorApp* mWorldEditorApp;
	};
	// our normal wxApp-derived class, as usual
	class WEApp : public wxApp
	{
	public:
		MainFrame* mMainFrame;
		bool OnInit()
		{
			mMainFrame = new MainFrame(NULL);
			SetTopWindow(mMainFrame);
			mMainFrame->Maximize();
			mMainFrame->Show();
			mMainFrame->UpdateOgre();
			return true;                    
		}
	};
	
	IMPLEMENT_APP(WEApp);
}